package com.qianniu.napi.admin.entity;

import com.baomidou.mybatisplus.enums.IdType;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableName;
import java.io.Serializable;

/**
 * <p>
 * 商家账务流水表
 * </p>
 *
 * @author chenxuebin
 * @since 2018-08-08
 */
@TableName("t_maccount_flow")
public class MaccountFlow extends Model<MaccountFlow> {

    private static final long serialVersionUID = 1L;

	@TableId(value="id", type= IdType.AUTO)
	private Long id;
    /**
     * 流水号
     */
	private String sn;
    /**
     * 金额
     */
	private BigDecimal amount;

	/**
	 * 营销费用余额
	 */
	private BigDecimal mamount;
	private BigDecimal lasttotal;

    /**
     * 1：已入账；0：待入账
     */
	@TableField("is_confirm")
	private Integer isConfirm;

    /**
     * 待入账日期
     */
	@TableField("confirm_date")
	private Date confirmDate;
    /**
     * 进出类型@1:入账,充值，赚佣金;-1:出帐，消费，提醒
     */
	private Integer iotype;
    /**
     * 消费类型@1：充值；2：提现；3：赚佣金；4：消费；5：赠送金额；6：扣款；
     */
	private Integer xftype;
	private BigDecimal jifen;
	private Integer state;
    /**
     * 摘要
     */
	private String remark;
    /**
     * 交易时间
     */
	private Date tradetime;
    /**
     * 资金来源方
     */
	private String transactionid;
	private String origin;
	private Long mid;
	private Long mpid;

    /**
     * 操作员
     */
	private Long uid;
	private Date createtime;
	private Date modifytime;
	private Long modifier;


	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getSn() {
		return sn;
	}

	public void setSn(String sn) {
		this.sn = sn;
	}

	public Long getUid() {
		return uid;
	}

	public void setUid(Long uid) {
		this.uid = uid;
	}

	public BigDecimal getAmount() {
		return amount;
	}

	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	public BigDecimal getMamount() {
		return mamount;
	}

	public void setMamount(BigDecimal mamount) {
		this.mamount = mamount;
	}

	public Integer getIsConfirm() {
		return isConfirm;
	}

	public void setIsConfirm(Integer isConfirm) {
		this.isConfirm = isConfirm;
	}

	public Date getConfirmDate() {
		return confirmDate;
	}

	public void setConfirmDate(Date confirmDate) {
		this.confirmDate = confirmDate;
	}

	public Integer getIotype() {
		return iotype;
	}

	public void setIotype(Integer iotype) {
		this.iotype = iotype;
	}

	public Integer getXftype() {
		return xftype;
	}

	public void setXftype(Integer xftype) {
		this.xftype = xftype;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Date getTradetime() {
		return tradetime;
	}

	public void setTradetime(Date tradetime) {
		this.tradetime = tradetime;
	}

	public Integer getState() {
		return state;
	}

	public void setState(Integer state) {
		this.state = state;
	}

	public String getOrigin() {
		return origin;
	}

	public void setOrigin(String origin) {
		this.origin = origin;
	}

	public Long getMid() {
		return mid;
	}

	public void setMid(Long mid) {
		this.mid = mid;
	}

	public Long getMpid() {
		return mpid;
	}

	public void setMpid(Long mpid) {
		this.mpid = mpid;
	}

	public Date getCreatetime() {
		return createtime;
	}

	public void setCreatetime(Date createtime) {
		this.createtime = createtime;
	}

	public Date getModifytime() {
		return modifytime;
	}

	public void setModifytime(Date modifytime) {
		this.modifytime = modifytime;
	}

	public Long getModifier() {
		return modifier;
	}

	public void setModifier(Long modifier) {
		this.modifier = modifier;
	}

	public String getTransactionid() {
		return transactionid;
	}

	public void setTransactionid(String transactionid) {
		this.transactionid = transactionid;
	}

	public BigDecimal getJifen() {
		return jifen;
	}

	public void setJifen(BigDecimal jifen) {
		this.jifen = jifen;
	}

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	public BigDecimal getLasttotal() {
		return lasttotal;
	}

	public void setLasttotal(BigDecimal lasttotal) {
		this.lasttotal = lasttotal;
	}

	@Override
	public String toString() {
		return "MaccountFlow{" +
			"id=" + id +
			", sn=" + sn +
			", uid=" + uid +
			", amount=" + amount +
			", isConfirm=" + isConfirm +
			", confirmDate=" + confirmDate +
			", iotype=" + iotype +
			", xftype=" + xftype +
			", remark=" + remark +
			", tradetime=" + tradetime +
			", origin=" + origin +
			", mid=" + mid +
			", createtime=" + createtime +
			", modifytime=" + modifytime +
			"}";
	}
}
